package com.xmall.order.define.request.refund;

import com.xmall.define.base.BaseUpdateRequest;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.List;

/**
 * 请求数据格式：新增/编辑 order - order_express
 */
@Data
public class OrderApplyReturnRequest extends BaseUpdateRequest implements Serializable {

    /**
     * 订单ID
     */
    @NotNull(message = "订单ID不能为空")
    private Long orderId;

    /**
     * 订单子项ID列表
     */
    @NotNull(message = "订单子项ID列表不能为空")
    @Size(min = 1, message = "订单子项ID列表不能为空")
    private List<Long> orderItemIds;

    /**
     * 退款类型
     */
    @NotNull(message = "退款类型不能为空")
    private Integer refundType;

    /**
     * 退款原因
     */
    @NotBlank(message = "退款原因不能为空")
    private String reason;

}
